狗狗品种分类器

提交文件

Criteria Meet Specification

提交文件

本次提交包含所有必需的文件。

第一步:检测人类

Criteria Meet Specification

问题 1:评估人脸检测器

提交包含狗狗与人脸数据集前 100 张图片中,检测出的人脸的百分比。

问题 2: 评估人脸检测器

表明 Haar 级联检测是否是一种合适的人脸检测技术。

第二步:检测狗狗

Criteria Meet Specification

问题 3:评估狗狗检测器

提交包含狗狗与人脸数据集前 100 张图片中,检测出的狗狗的百分比。

第三步:建立一个CNN区分狗狗的种类(从头开始)

Criteria Meet Specification

模型架构

提交指明了一个 CNN 模型架构。

测试模型

训练过的模型在测试数据集上至少达到 1% 的准确度。

训练模型

提交指出了训练算法所用的 epochs 数。

第五步:建立一个CNN区分狗狗的种类

Criteria Meet Specification

获取关键特征

提交下载了对应于 Keras 与训练模型(VGG-19, ResNet-50, Inception, or Xception)的关键特征。

模型架构

提交指明了一种模型架构

编译模型

提交通过说明代价函数与优化方式编译结构。

问题 5:模型架构

提交应指出为什么这一架构会在分类任务中成功,以及为什么早期的尝试不成功。

训练模型

提交使用模型的检查点训练模型,并将拥有最佳交叉验证损失的模型权重保存下来。

读取拥有最佳交叉验证损失的模型。

提交读取了模型获得最小交叉验证损失的模型权重。

测试模型

测试数据集上的准确度达到了 60% 或更多。

用模型预测狗狗种类

提交包含一个满足如下要求的函数,它以文件路径作为输入,并返回由 CNN 预测的狗品种。

第六步:写出你自己的算法

Criteria Meet Specification

写出你自己的算法

提交使用第五步建立的 CNN 模型检测狗的种类。提交应对不同种类的输入图片有着不同的输出结果,并且提供实际(或最接近的)狗的种类。

第七步:测试你的算法

Criteria Meet Specification

用样例图片测试你的算法

提交应至少检测了 6 张图片,其中至少包含了 2 张人脸图片与 2 张狗狗图片。

Tips to make your project standout:

(Presented in no particular order …)

(1) Augment the Training Data

Augmenting the training and/or validation set might help improve model performance.

(2) Turn your Algorithm into a Web App

Turn your code into a web app using Flask or web.py !

(3) Overlay Dog Ears on Detected Human Heads

Overlay a Snapchat-like filter with dog ears on detected human heads. You can determine where to place the ears through the use of the OpenCV face detector, which returns a bounding box for the face. If you would also like to overlay a dog nose filter, some nice tutorials for facial keypoints detection exist here .

(4) Add Functionality for Dog Mutts

Currently, if a dog appears 51% German Shephard and 49% poodle, only the German Shephard breed is returned. The algorithm is currently guaranteed to fail for every mixed breed dog. Of course, if a dog is predicted as 99.5% Labrador, it is still worthwhile to round this to 100% and return a single breed; so, you will have to find a nice balance.

(5) Experiment with Multiple Dog/Human Detectors

Perform a systematic evaluation of various methods for detecting humans and dogs in images. Provide improved methodology for the face_detector and dog_detector functions.